package be.ipl.finito.daoimpl;

import javax.ejb.Stateless;

import be.ipl.finito.dao.JoueurDao;
import be.ipl.finito.domaine.Joueur;
import be.ipl.finito.exceptions.ArgumentInvalideException;

@SuppressWarnings("serial")
@Stateless
public class JoueurDaoImpl extends DaoImpl<Integer, Joueur> implements
		JoueurDao {

	@Override
	public Joueur rechercher(String pseudo) {
		String queryString = "select j from Joueur j where j.login = ?1";
		return recherche(queryString, pseudo);
	}

	@Override
	public Joueur enregistrerJoueur(String login, String motDePasse, String nom,
			String prenom, String email) throws IllegalArgumentException {
		Joueur j = new Joueur(login, motDePasse, nom, prenom, email);
		return this.enregistrer(j);
	}

	@Override
	public Joueur chargerPlateau(Joueur joueur) {
		joueur = rechercher(joueur.getId());
		joueur.getLesPlateaux().size();
		return joueur;
	}

	@Override
	public Joueur seConnecter(String pseudo, String mdp) {
		String queryString = "select j from Joueur j where j.login = ?1 and j.motDePasse = ?2";
		return recherche(queryString, pseudo,mdp);
	}
}
